
using System;
using LastFMGenNHibernate.EN.LastFM;
using LastFMGen_LastFMWCF.DTO.LastFM;

namespace LastFMGen_LastFMWCF.AdaptersEN.LastFM
{
        public class AlbumDTOENAdapter {
        public static AlbumEN Convert (AlbumDTO dto)
        {
                AlbumEN newinstance = null;

                try
                {
                        if (dto != null) {
                                newinstance = new AlbumEN ();



                                newinstance.NombreAlbum = dto.NombreAlbum;
                                newinstance.Id = dto.Id;
                                if (dto.Cancion_oid != null) {
                                        newinstance.Cancion = new System.Collections.Generic.List<LastFMGenNHibernate.EN.LastFM.CancionEN>();
                                        foreach (LastFMGen_LastFMWCF.DTO.LastFM.CancionDTO entry in dto.Cancion_oid) {
                                                newinstance.Cancion.Add (LastFM.CancionDTOENAdapter.Convert (entry));
                                        }
                                }
                                newinstance.Etiqueta = dto.Etiqueta;
                                if (dto.Grupo_oid != -1) {
                                        LastFMGenNHibernate.CAD.LastFM.IGrupoCAD grupoCAD = new LastFMGenNHibernate.CAD.LastFM.GrupoCAD ();

                                        newinstance.Grupo = grupoCAD.ReadOIDDefault (dto.Grupo_oid);
                                }
                        }
                }
                catch (Exception ex)
                {
                        throw ex;
                }
                return newinstance;
        }
        }
}
